The present invention relates to the field of graphical user interfaces for computing devices, and, more specifically, to providing dynamic generation and display of a hierarchical hybrid context menu at a graphical user interface.
Computer applications having graphical user interfaces (GUIs) generally provide menus of selectable application features. A standard in the field is to display a drop down list of selectable menu elements, either upon user activation (e.g., a keystroke or a right mouse click) or by user inaction (i.e., after a fixed period of mouse inactivity) when the cursor or pointer hovers over a designated area of the display screen.
FIG. 1A (Prior Art) illustrates a context menu which appears upon right clicking anywhere on the user display when running a Graphical Modeling Framework (“GMF”) tool. Traditional menu systems arrange the list of selections in a top-to-bottom linear configuration for user selection. If there are a large number of menu items, the lists will be broken into a primary list, often comprising the most frequently used menu items, and a plurality of sub-lists which are selectively displayed upon user selection of a menu item in the primary list. Display of a primary list with one expanded sub-list or sub-menu is shown for the context menu for GMF in FIG. 1B (Prior Art). Upon use selection of a particular heading on the primary list, the subsequent menu list (also referred to as a sub-list or a child menu) is displayed for user selection.
The use of linear lists with sub-lists has some drawbacks. Frequently, the sub-list will be automatically displayed only for so long as the user maintains the exact cursor, or pointer, position with respect to the expanded menu item from the primary list or an item on the sub-list. In addition, the user needs to carefully move the cursor laterally over to the sub-list/child menu list along the shared line or risk the disappearance of the list due to a newly-detected cursor position. Further, the menu items on linear lists and sub-lists often appear at unpredictable GUI locations in an attempt to display the selectable items away from screen edges and close to the current cursor location (e.g., lists above and below selected headings as shown in FIGS. 1B (Prior Art) and 1C (Prior Art) respectively. Unpredictable GUI locations also include displaying lists on the left or right of selected headings (not illustrated).
Pie menus, such as the one shown in FIG. 2 (Prior Art), have been used as a method for quick object selection. In a pie menu, a user's cursor located at the center of the pie display is distance invariant (i.e., the distance to select any one menu item is the same). The pros and cons of pie menus over traditional linear menus have been detailed in a publication by P. Hopkins, entitled “Direction Selection is Easy as Pie Menus” from Computer Graphics Workshop (Oct. 10, 1997).
Radial menus, which are variations on traditional pie menus, also have advantages and disadvantages. The radial menu depends on having unique icons and a 1:1 aspect ratio for every item, since wide text blocks will skew the pie's geometry. As shown in FIG. 3 (Prior Art), a radial menu including eight primary segments, 31-38, is displayed to a user. When the user hovers over or actively selects one of the segments, 32, a sub-menu is displayed including sub-segments 32.1, 32.2 and 32.3.